/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package tk.eigh.ksvg.component;

import java.util.List;
import java.util.Locale;
import org.apache.myfaces.buildtools.maven2.plugin.builder.annotation.JSFProperty;

/**
 *
 * @author nt
 */
interface _ConditionalProcessingAttributes{

    /**
     * The value is a list of IRI references which identify the required
     * extensions, with the individual values separated by white space.
     * Determines whether all of the named extensions are supported by the user
     * agent. If all of the given extensions are supported, then the attribute
     * evaluates to true; otherwise, the current element and its children are
     * skipped and thus will not be rendered.
     */
    @JSFProperty
    List<String> getRequiredExtensions();

    /**
     * The value is a list of feature strings, with the individual values
     * separated by white space. Determines whether all of the named features
     * are supported by the user agent. Only feature strings defined in the
     * Feature String appendix are allowed. If all of the given features are
     * supported, then the attribute evaluates to true; otherwise, the current
     * element and its children are skipped and thus will not be rendered.
     */
    @JSFProperty
    List<String> getRequiredFeatures();

    /**
     * The attribute value is a comma-separated list of language names as
     * defined in BCP 47 [http://www.w3.org/TR/SVG/refs.html#ref-BCP47].
     *<br/>
     * Evaluates to "true" if one of the languages indicated by user preferences
     * exactly equals one of the languages given in the value of this parameter,
     * or if one of the languages indicated by user preferences exactly equals a
     * prefix of one of the languages given in the value of this parameter such
     * that the first tag character following the prefix is "-".
     *<br/>
     * Evaluates to "false" otherwise.
     */
    @JSFProperty
    List<Locale> getSystemLanguage();
}
